layui.use(
				[ 'form', 'layer', 'laydate', 'table', 'laytpl' ],
				function() {
					var form = layui.form, layer = parent.layer === undefined ? layui.layer
							: top.layer, $ = layui.jquery, laydate = layui.laydate, laytpl = layui.laytpl, table = layui.table;

					// 新闻列表
					var tableIns = table
							.render({
								elem : '#newsList',
								url : '/admin/role/querypage',
								cellMinWidth : 95,
								page : true,
								height : "full-125",
								limit : 15,
								limits : [ 10, 15, 20, 25 ],
								id : "newsListTable",
								cols : [ [
										{
											field : 'roleName',
											title : '职位名称',
											align : "center"
										},
										{
											field : 'resourceName',
											title : '职能描述'
										},
										{
											field : 'createTime',
											title : '添加时间',
											sort : false,
											fixed : false,
											templet : function(d){return layui.laytpl.toDateString(d.createTime,'yyyy-MM-dd HH:mm:ss'); }
										},
										{
											field : 'status',
											title : '是否启用',
											align : 'center',
											templet : function(d) {
												var str = '';
												if (d.status == 0) {
													str = '<input type="checkbox" checked="" id='+ d.roleId +' name="status" lay-filter="status" lay-skin="switch" lay-text="是|否" '
														+ d.status + '>';
												}else if(d.status == 1){
													str = '<input type="checkbox" id='+ d.roleId +' name="status" lay-filter="status" lay-skin="switch" lay-text="是|否" '
														+ d.status + '>';
								                }
												return str;
											}
										}, {
											title : '操作',
											templet : '#newsListBar',
											fixed : "right",
											align : "center"
										} ] ]
							});

					// 是否置顶
					form.on('switch(status)', function(data) {
						var index = layer.msg('修改中，请稍候', {
							icon : 16,
							time : false,
							shade : 0.8,
						});
						var status='';
						if (data.elem.checked) {
							status = 0;
						} else {
							status = 1;
						}
						$.get("/admin/role/update", {
							roleId : data.elem.id,
							status : status
						}, function(data) {
							var res = JSON.parse(data);
							if (res.success) {
								layer.msg("操作成功！");
								tableIns.reload();
							} else {
								top.layer.msg(res.message);
							}
						})
					})

					// 搜索【此功能需要后台配合，所以暂时没有动态效果演示】
					$(".search_btn").on("click", function() {
						if ($(".searchVal").val() != '') {
							table.reload("newsListTable", {
								page : {
									curr : 1
								// 重新从第 1 页开始
								},
								where : {
									key : $(".searchVal").val()
								// 搜索的关键字
								}
							})
						} else {
							layer.msg("请输入搜索的内容");
						}
					});

					// 添加文章
					function addNews(edit) {
						if (edit == undefined) {
							window.location.href = "/admin/role/detail";
						} else {
							window.location.href = "/admin/role/detail?roleId="
									+ edit.roleId;
						}
					}
					$(".addNews_btn").click(function() {
						addNews();
					})

					// 批量删除
					$(".delAll_btn")
							.click(
									function() {
										var checkStatus = table
												.checkStatus('newsListTable'), data = checkStatus.data, newsId = [];
										if (data.length > 0) {
											for ( var i in data) {
												newsId.push(data[i].newsId);
											}
											layer.confirm('确定删除选中的文章？', {
												icon : 3,
												title : '提示信息'
											}, function(index) {
												// $.get("删除文章接口",{
												// newsId : newsId
												// //将需要删除的newsId作为参数传入
												// },function(data){
												tableIns.reload();
												layer.close(index);
												// })
											})
										} else {
											layer.msg("请选择需要删除的文章");
										}
									})

					// 列表操作
					table.on('tool(newsList)', function(obj) {
						var layEvent = obj.event, data = obj.data;
						if (layEvent === 'edit') { // 编辑
							addNews(data);
						} else if (layEvent === 'del') { // 删除
							layer.confirm('确定删除此文章？', {
								icon : 3,
								title : '提示信息'
							}, function(index) {
								$.get("/admin/role/delete", {
									userId : data.userId
								// 将需要删除的newsId作为参数传入
								}, function(data) {
									var res = JSON.parse(data);
									if (res.success) {
										tableIns.reload();
										layer.close(index);
									} else {
										top.layer.msg(res.message);
									}
								})
							});
						} else if (layEvent === 'look') { // 预览
							layer.alert("此功能需要前台展示，实际开发中传入对应的必要参数进行文章内容页面访问")
						}
					});

					// 时间戳的处理
					layui.laytpl.toDateString = function(d, format) {
						var date = new Date(d || new Date()), ymd = [
								this.digit(date.getFullYear(), 4),
								this.digit(date.getMonth() + 1),
								this.digit(date.getDate()) ], hms = [
								this.digit(date.getHours()),
								this.digit(date.getMinutes()),
								this.digit(date.getSeconds()) ];

						return format.replace(/yyyy/g, ymd[0]).replace(/MM/g,
								ymd[1]).replace(/dd/g, ymd[2]).replace(/HH/g,
								hms[0]).replace(/mm/g, hms[1]).replace(/ss/g,
								hms[2]);
					};
					// 数字前置补零
					layui.laytpl.digit = function(num, length, end) {
						var str = '';
						num = String(num);
						length = length || 2;
						for (var i = num.length; i < length; i++) {
							str += '0';
						}
						return num < Math.pow(10, length) ? str + (num | 0)
								: num;
					};

				})